\documentclass{report}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[francais]{babel}
\usepackage[top=2cm, bottom=2cm, left=2cm, right=2cm]{geometry}
\usepackage[ruled, french]{algorithm2e}
\usepackage{tikz}
\usepackage{amsthm}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage[section,subsection,subsubsection]{extraplaceins}
\usepackage{float}
\usetikzlibrary{automata,positioning}
\setcounter{secnumdepth}{0}

\title{Mini-projet AAR\\Gestion d'un tournoi de foot}
\author{\bsc{AOUADNI} Wadhah, \bsc{FONTORBE} Jordan, \bsc{MOROSI} J\'{e}r\'{e}my}
\date{}

\begin{document}
\maketitle
\newpage

\section{Analyse}

\begin{figure}
\begin{center}
\resizebox{0.7\linewidth}{!}{
\includegraphics{"Diagramme de cas d'utilisation"}
}
\caption{Diagramme de cas d'utilisation}
\end{center}
\end{figure}

\begin{figure}
\begin{center}
\resizebox{\linewidth}{!}{
\includegraphics{"Diagramme de classe"}
}
\caption{Diagramme de classe}
\end{center}
\end{figure}

\begin{figure}
\begin{center}
\resizebox{\linewidth}{!}{
\includegraphics{"Diagramme de deploiement"}
}
\caption{Architecture du projet}
\end{center}
\end{figure}

\subsection{Explication de la structure}
Comme notre diagramme de cas d'utilisation nou donne trois type d'utilisateur, nous avons choisit de faire trois servlet correspondant chacun a un type d'utilisateur :\\
\begin{itemize}
\item Un servlet pour la partie utilisateur lambda (i.e. la consulatations des matchs et des équipes)
\item Un servlet pour la partie représentant (i.e. l'inscription des équipes)
\item Un servlet pour la partie administration (i.e. la gestions des arbitres et des rencontres)
\end{itemize}

D'autre part, comme vous pouvez le constater sur le diagramme ci-dessus, nous avons fait de l"héritage sur la classe `personne' puisque les joueurs, arbitre, représentant et administrateur partage les informations `nom' et `prénom'.\\
Pour gérer l'avancement d'un match nous avons créé un enum `Etat' permettant d'indiquer si un match est prévu (donc non commencé), en cours ou bien terminé. Ainsi nous savons qu'un tour est terminé si tous les matchs de ce tour sont à l'état `terminé'.\\
Il n'y a pas de classe \texttt{Tournoi} car un tournoi est une chose abstraite. Ainsi, le tournoi est représenté par l'état de la base de donnée à un moment donné et par une façade dans notre architecture.

\newpage
\section{Répartition des tâches}

\subsection{Prévisionnelle}

\begin{itemize}
\item Jérémy: \begin{itemize}
\item UML.
\item Partie utilisateur: \begin{itemize}
\item UtilisateurServlet.
\item JSPs.
\item méthodes correspondantes dans la façade.
\end{itemize}
\item Manuel (partie utilisateur).
\end{itemize}
\item Jordan: \begin{itemize}
\item Partie administrateur: \begin{itemize}
\item AdministrateurServlet.
\item JSPs.
\item méthodes correspondantes dans la façade.
\end{itemize}
\item Manuel (partie administrateur).
\end{itemize}
\item Wadhah: \begin{itemize}
\item Modèle: \begin{itemize}
\item entités.
\item façade.
\end{itemize}
\item Partie représentant: \begin{itemize}
\item InscriptionServlet.
\item JSPs.
\item méthodes correspondantes dans la façade.
\end{itemize}
\item Manuel (partie représentant).
\end{itemize}
\end{itemize}

\subsection{Réelle}

\begin{itemize}
\item Jérémy: \begin{itemize}
\item UML.
\item Modèle: \begin{itemize}
\item entités.
\end{itemize}
\item Partie utilisateur: \begin{itemize}
\item UtilisateurServlet.
\item JSPs.
\item méthodes correspondantes dans la façade.
\end{itemize}
\item Manuel (partie utilisateur).
\end{itemize}
\item Jordan: \begin{itemize}
\item Partie administrateur: \begin{itemize}
\item AdministrateurServlet.
\item JSPs.
\item méthodes correspondantes dans la façade.
\end{itemize}
\item Manuel (partie administrateur).
\end{itemize}
\item Wadhah: \begin{itemize}
\item Modèle: \begin{itemize}
\item entités.
\item façade.
\end{itemize}
\item Partie représentant: \begin{itemize}
\item InscriptionServlet.
\item JSPs.
\item méthodes correspondantes dans la façade.
\end{itemize}
\item Manuel (partie représentant).
\end{itemize}
\end{itemize}

\end{document}